const commonElTableMixin = {
  data() {
    return {
      // 表格当前编辑项
      curEditedTableData: null,
      // 表格选中项
      multipleSelection: [],
      // 表格数据
      tableData: [],
      // 总条数
      count: 0,
      headerCellStyle: {
        background: '#f0faff',
        color: '#787878'
      },
      page_sizes: [10, 20, 50, 100],
      searchParams: {
        pageIndex: 1,
        page_size: 10,
      },
      pageParams: {
        page: 1,
        page_size: 10,
      }
    }
  },

  created() {
    this.fetchData && this.fetchData()
  },

  activated() {
    if (this.updateCache) {
      this.updateCache()
    } else {
      this.fetchData && this.fetchData()
    }
  },

  methods: {
    /**
     * 更新缓存
     */
    updateCache() {

    },

    /**
     * 查询表格数据
     */
    fetchData() {

    },

    /**
     * 切换每页显示的个数
     * @param val
     */
    handleSizeChange(val) {
      this.pageParams.page_size = Number(val)
      this.fetchData && this.fetchData()
    },

    /**
     * 翻页
     * @param val
     */
    handleCurrentChange(val) {
      this.pageParams.page = Number(val)
      this.fetchData && this.fetchData()
    },

    /**
     * 表格选中项变化事件
     * @param val 选中项
     */
    handleSelectionChange(val) {
      this.multipleSelection = val
    }
  }
}

export default commonElTableMixin
